Mai 19

Marc Mutz

Move, richtig!

Move, richtig! von Marc Mutz


Vom 17. bis 19. Mai fand die „ ADC++ Konferenz 2021“ in München statt.

Video zum Vortrag von Marc Mutz mit dem Titel "Move, richtig!" anlässlich der ADC++ 2021.

In letzter Zeit haben partiell-geformte (partially-formed) Objekte als natürlicher Zustand von moved-from Objekten an Zugkraft gewonnen. Alexander Stepanov definiert sie in seinem wegweisenden Buch Elements of Programming (EoP) als einen Zustand, in dem die einzig gültigen Operationen Zuweisung und Zerstörung sind. Dieser Status war und ist für Hochleistungscode und die C++-Garantie "don't pay for what you don't use" von wesentlicher Bedeutung. Nach einer kurzen Einführung werden wir uns ansehen, wo in der C/C++-Sprache solche Zustände auftraten, noch bevor es ein "C++" oder den Namen "partiell geformt" gab und sicherlich bevor die Diskussion über den moved-from Zustand begann. Wir zeigen damit, dass egal, wie Sie über das partiell-geformte Zustandskonzept denken, es als platonisches Ideal in der Welt der Computerprogrammierung vorhanden ist. Wir werden nichts weniger versuchen, als die EoP-Behandlung weiter in das moderne C++ zu übertragen. Wir werden feststellen, dass die Move-Semantik, wie sie derzeit im Standard definiert ist, zu stark ist, da sie gegen "don't pay for what you don't use" verstößt, und einen Überblick über schwächere Alternativen geben, die ebenso leicht zu erlernen und zu begründen sind, aber natürlichste und effizienteste Implementierungen von Typen ermöglichen, die sie verwenden. Ein Paradebeispiel wird flat_map sein. Wir werden auch zeigen, wie Entwickler, die sich mit dem partiell-geformten Zustand unwohl fühlen, ihn ohne oder mit nur geringen Kosten (weder hinsichtlich der Lesbarkeit des Codes noch des Laufzeitverhaltens) vermeiden können, und anhand dieser Beispiele ein neues (altes) Paradigma für API-Design vorschlagen: sicher und unsichere Funktionen (im Sinne von Sean Parent).

Auf unserem Video-Portal studios.ppedv.de findet man eine breite Basis an Informationen rund um das Thema IT.

Die Schwerpunkte bilden dabei nicht nur Microsoft-Technologien. Themen wie Visual Studio, .net, C++, C#, Angular JS und viele mehr werden von unseren professionellen Trainern detailliert erklärt.


"Vielen Dank für die hilfreichen Videos! Der Inhalt ist auf den Punkt gebracht."

Thomas M.

"Euer Content hilft mir sehr! Besonders interessieren würde ich mich für weitere Videos zum Thema: C++ Parallelisierung und die Erstellung von grafischen Benutzeroberflächen."

Peter H.

"Für jeden was dabei, egal ob Anfänger oder Profi."

Klaus G.

"Echt super, dass ich mir die Vorträge von den SQLdays hier ansehen kann. Leider konnte ich letztes Jahr bei der Konferenz nicht vor Ort sein."

Lana A.